lr(0) parsing